#include "RenderData.h"

namespace binge
{

RenderData::RenderData(void)
{

}

RenderData::~RenderData(void)
{
    objectsSprite.clear();
}

void
RenderData::AddObject(int id)
{
    objectsId.push_back(id);
    objectsSprite.push_back(sf::Sprite());
}

void
RenderData::RemoveObject(int id)
{
    int index = GetIndex(id);
    if (index != -1)
    {
        objectsId.erase(objectsId.begin()+index);
        objectsSprite.erase(objectsSprite.begin()+index);
    }
}

void
RenderData::SetSprite(int id, sf::Sprite sprite)
{
    int index = GetIndex(id);
    if (index != -1)
    {
        objectsSprite[index] = sprite;
    }
}

sf::Sprite&
RenderData::GetSprite(int id)
{
    int index = GetIndex(id);
    if (index != -1)
    {
        return objectsSprite[index];
    }
}

} // namespace
